<template>
    <div>
        <!-- <h1>当前和：{{ this.$store.state.sum }}</h1> -->
        <h1>当前和：{{ $store.state.sum }}</h1> 模板里面可以省略this，因为它可以看到 vc身上的所有东西<br>
        <h1>放大10倍：{{ $store.getters.bigSum }}</h1>
        <select v-model.number="n">
            <option value="1">1</option>
            <option value="2">2</option>
            <option value="3">3</option>
        </select>
        <button @click="increament">+</button>
        <button @click="decreament">-</button>
        <button @click="increamentOdd">当前和 是奇数才能加</button>
        <button @click="increamentWait">延迟500毫秒地加</button>
    </div>
</template>

<script>
import Vue from 'vue';
export default Vue.extend({
    name: 'Count',
    data() {
        return {
            n: 1,
        }
    },
    methods: {
        increament() {
            // this.$store.commit('JIA', this.n) // 不推荐写法：vc用commit 直接跟 mutations 对话，相当于跳过了 actions
            this.$store.dispatch('jia', this.n) // 推荐写法：1.vc先用dispatch 先跟 actions 对话，然后 actions 再跟 mutations 对话
            // this.$store.state.sum+=1 // 超级不推荐写法：直接操作 store。其他人没法复用这个逻辑
        },
        decreament() {
            this.$store.dispatch('jian', this.n)
        },
        increamentOdd() {
            this.$store.dispatch('jiaOdd', this.n)
        },
        increamentWait() {
            this.$store.dispatch('jiaWait', this.n)
        },
    },
    mounted() {
        console.log("Count", this);

    }
}) 
</script>

<style>
button {
    margin: 3px;
}
</style>